
# 算术运算符示例
print(10 + 4)  # 加法
print(10 - 4)  # 减法
print(10 * 4)  # 乘法
print(10 / 4)  # 除法，结果为浮点数
print(10 // 4)  # 整除，结果为整数
print(10 % 4)  # 取模，返回除法的余数
print(10 ** 4)  # 幂运算，10 的 4 次方


# 比较运算符示例
print(10 > 4)  # 大于，结果为布尔值 True
print(10 < 4)  # 小于，结果为布尔值 False
print(10 >= 4)  # 大于等于，结果为布尔值 True
print(10 <= 4)  # 小于等于，结果为布尔值 False
print(10 == 4)  # 等于，结果为布尔值 False
print(10 != 4)  # 不等于，结果为布尔值 True


# 逻辑运算符示例
print((10 > 4) and (10 < 20))  # 逻辑与，结果为布尔值 True
print((10 > 4) or (10 < 5))  # 逻辑或，结果为布尔值 True
print(not (10 > 4))  # 逻辑非，结果为布尔值 False


# 赋值运算符示例
a = 10
b = 4
a += b  # 相当于 a = a + b
print(a)


# 成员运算符示例
print(10 in [1, 2, 3, 4, 5])  # 检查 10 是否在列表中，结果为布尔值 False
print(4 in [1, 2, 3, 4, 5])  # 检查 4 是否在列表中，结果为布尔值 True
print(10 not in [1, 2, 3, 4, 5])
print('hel' in 'hello')


# 身份运算符示例
x = [1, 2, 3]
y = x
z = [1, 2, 3]
print(x is y)  # x 和 y 引用同一个对象，结果为布尔值 True
print(x is z)  # x 和 z 引用不同的对象，结果为布尔值 False
print(x == z)  # x 和 z 的值相等，结果为布尔值 True 
a = 10
b = 10
print(a is b)  # a 和 b 引用同一个整数对象，结果为布尔值 True
print(a == b)  # a 和 b 的值相等，结果为布尔值 True
print(id(a), id(b))  # 输出 a 和 b 的内存地址，通常相同
print(a is not b)  # a 和 b 引用同一个对象，结果为布尔值 False


# 字符串比较
print('a' > 'b')  # 字符串比较，结果为布尔值 False
print('a' < 'b')  # 字符串比较，结果为布尔值 True
print('apple' < 'banana')  # 字符串比较，结果为布尔值 True
print('apple' > 'banana')  # 字符串比较，结果为布尔值 False